#include "LitEnumStr.h"

#ifndef ENUM_GUARD_ShapeType
#define ENUM_GUARD_ShapeType

namespace Lit
{
	namespace Physics
	{
		ENUM_BEGIN( ShapeType )
		{
			ENUM_ELEM_SETVALTR( ST_NULL, 0, "Null" ),
			ENUM_ELEM_SETVALTR( ST_BOX, 1, "Box" ),
			ENUM_ELEM_SETVALTR( ST_PLANE, 2, "Plane" ),
			ENUM_ELEM_SETVALTR( ST_SPHERE, 3, "Sphere" )
		} 
		ENUM_END( ShapeType );

		ENUM_BEGIN( SolverModel )
		{
			ENUM_ELEM_SETVALTR( SM_EXACT, 0, "Exact" ),
			ENUM_ELEM_SETVALTR( SM_ITERATIVE_SIMPLE, 1, "Iterative Simple" ),
			ENUM_ELEM_SETVALTR( SM_ITERATIVE_ADVANCED, 3, "Iterative Advanced" ),
			ENUM_ELEM_SETVALTR( SM_ITERATIVE_PRECISE, 5, "Iterative Precise" )
		} 
		ENUM_END( SolverModel );

		ENUM_BEGIN( PlatformOptimisation )
		{
			ENUM_ELEM_SETVALTR( PO_NONE, 0, "None" ),
			ENUM_ELEM_SETVALTR( PO_SIMPLE, 1, "Simple" ),
			ENUM_ELEM_SETVALTR( PO_COMPLEX, 2, "Complex" )
		} 
		ENUM_END( PlatformOptimisation );
	};
};

#endif